package com.itheima.health.service;

import com.itheima.health.entity.PageResult;
import com.itheima.health.pojo.User;

import java.util.List;
import java.util.Map;

/**
 * @author ：w
 * @date ：Created in 2019/7/15 0015
 * @description ：用户接口
 * @version: 1.0
 */
public interface UserService {

    /**
     * 用户登录
     * @param username 用户名
     * @param password 密码
     * @return
     */
    public boolean login(String username, String password);

    /**
     * 分页获取用户信息
     * @return
     */
    public PageResult pageQuery(Integer currentPage, Integer pageSize, String queryString);

    /**
     * 新增用户
     * @param user
     * @param roles
     */
    public void add(User user, Integer[] roles);

    /**
     * 基于ID,获取用户信息
     * @param id
     * @return
     */
    public User findById(Integer id);

    /**
     * 更新用户
     * @param user
     * @param roleIds
     */
    void updateOneRecord4User(User user, Integer[] roleIds);

    /**
     * 基于ID,删除用户信息
     * @param id
     */
    void delOneRecord4User(Integer id);


	/**
	 * 根据用户名获取用户信息(基本信息、角色信息、权限信息)
	 * @param username
	 * @return
	 */
	User findByUsername(String username);

	/**
	 * 根据用户名获取用户可以访问的菜单
	 * @param username 用户名
	 * @return
	 */
    List<Map<String,Object>> getMenuByUsername(String username);
}
